Digital encoding of signals is becoming increasingly important in the modern era of digital communication and storage. One problem with many sophisticated source coding algorithms is that they do a poor job of reproducing the background noise when no signal is present, since the encoding is designed to match the characteristic of a typical input signals. For example, the VSELP speech coding algorithm, which is the North American digital cellular telephone standard IS54, introduces fluctuations into the background noise generated in an automobile, resulting in an annoying perceptual effect sometimes known as "swirling".
An important step in any digital coding system involves quantization of a signal, where the signal is represented by one of a finite number of possible values. In simple waveform quantization, samples of the input signal are directly quantized, while in more sophisticated coding schemes some model parameters based on transformations of the input signal may be quantized. A typical quantizer is represented by FIG. 1.
In traditional quantization schemes, a range of possible output values is searched for the output which matches the input value with the least possible error, where the error is defined as: EQU E=.vertline.Q-X.vertline..sup.2
where Q represents the quantizer output value, X represents the quantizer input, and .vertline.Y.vertline..sup.2 represents the square of the value of Y in the case of scalar quantization or the squared norm of the vector Y in the case of vector quantization. The squared norm is defined as the inner product of a vector with itself: EQU .vertline.Y.vertline..sup.2 =&lt;Y,Y&gt;